OpenFlow may be a technology that exploits the fact that most modern Ethernet switches and routers contain flow-tables that run at line-rate to implement firewalls, network address translation (NAT), quality of service (QoS), and to collect statistics. While each vendor's flow-table may be different, OpenFlow may exploit a common set of functions that run in many switches and routers. OpenFlow may provide an open protocol to program the flow-table in different switches and routers. The data path of an OpenFlow switch comprises a Flow Table (forwarding table), and an action associated with each flow (forwarding) entry.